From 18a594c39297ee79749fe22e2a7efa76eb6270e7 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Mon, 5 May 2014 15:27:14 +0200 Subject: [PATCH] applicationwindow: Properly unmap the menubar widget --- gtk/gtkapplicationwindow.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gtk/gtkapplicationwindow.c b/gtk/gtkapplicationwindow.c index 1ea52f7fab..bf037ffcb3 100644 --- a/gtk/gtkapplicationwindow.c +++ b/gtk/gtkapplicationwindow.c @@ -691,6 +691,18 @@ gtk_application_window_real_map (GtkWidget *widget) GTK_WIDGET_CLASS (gtk_application_window_parent_class)->map (widget); } +static void +gtk_application_window_real_unmap (GtkWidget *widget) +{ + GtkApplicationWindow *window = GTK_APPLICATION_WINDOW (widget); + + /* XXX could eliminate this by tweaking gtk_window_unmap */ + if (window->priv->menubar) + gtk_widget_unmap (window->priv->menubar); + + GTK_WIDGET_CLASS (gtk_application_window_parent_class)->unmap (widget); +} + static void gtk_application_window_real_forall_internal (GtkContainer *container, gboolean include_internal, @@ -811,6 +823,7 @@ gtk_application_window_class_init (GtkApplicationWindowClass *class) widget_class->realize = gtk_application_window_real_realize; widget_class->unrealize = gtk_application_window_real_unrealize; widget_class->map = gtk_application_window_real_map; + widget_class->unmap = gtk_application_window_real_unmap; object_class->get_property = gtk_application_window_get_property; object_class->set_property = gtk_application_window_set_property; object_class->dispose = gtk_application_window_dispose; -- 2.30.2